import axios from 'axios'
import { Toast } from 'vant'
import router from '@/router'
import { removeToken, getToken } from './storage'

// 创建一个 axios 实例，并设置 baseURL
const instance = axios.create({
  baseURL: 'http://interview-api-t.itheima.net'
})

instance.interceptors.request.use(
  function (config) {
    // 统一设置请求头
    getToken() && (config.headers.Authorization = 'Bearer ' + getToken())
    return config
  },
  function (error) {
    return Promise.reject(error)
  }
)

instance.interceptors.response.use(
  function (response) {
    // 数据剥离
    // return response.data
    return response
  },
  function (error) {
    // 错误提示
    Toast.fail(error.response?.data.message)
    // token过期处理
    if (error.response?.status === 401) {
    removeToken()
    router.push('/login')
    }
    return Promise.reject(error)
  }
)

// 导出实例
export default instance
